home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 February
/
EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso
/
enigma
/
earcd
/
editor
/
editor2
/
textengn.lha
/
Textengine
/
TEM
/
pgs3.tet
< prev
Wrap
Text File
|
1996-12-23
|
13KB
|
553 lines
/* $VER: pgs.tet 1.0 (6.10.96) */
/* start */
options results
parse arg n x y
signal on syntax
myhost=n||" '"||x||"'"
interpret myhost
n=open(script,"T:typeset.script","W")
n=writeln(script,"/* automatic script */")
n=writeln(script,"address 'PAGESTREAM'")
n=writeln(script,"'GETOBJECT BOUNDINGBOX BBOX'")
/* main */
'GOTO BYTE=2'
'EXTRACT LEFT="<" RIGHT=">" VAR STYLE'
stylepre=right(STYLE,3)
style='@P'||stylepre||':'
stylepre='@P'||stylepre||'_'
'DELETE LINE'
'REPLACE STRING="*"`" BY="<\#8222>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="*"''" BY="<\#8220>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="---" BY="<\#8212>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="--" BY="<\#8211>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<%>" BY="" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="@" BY="<\@>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<I>" BY="!!!xxxDangerI!!!" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<B>" BY="!!!xxxDangerB!!!" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<%START>" BY="" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<%END>" BY="" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<BREAK>" BY="<\c>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<HEAD2>" BY="@Phead2:" WILD=FALSE ALL QUIET CONFIRM=FALSE'
huch=RANDOM(0,5)
'GOTO BYTE=1'
'TEXT T="<PageStream3.0>" CR'
'CR'
found=0
do while found=0
'REPLACE STRING="<LIST" BY="'stylepre'list:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY CODE'
if RESULT=32 then do
'DEL'
'GOTO EOL'
'BACK'
end
else 'DELETE EOL'
'MARK HIDE'
'MARK SET LINE'
'CLIP COPY UNIT 112'
'PING SLOT 0'
'REPLACE STRING="</LIST>" BY="'stylepre'noindent:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
'CLIP PASTE UNIT 112'
'GOTO COLUMN 12'
'DELETE LEFT'
'TEXT T="<LISTEND>"'
'MARK HIDE'
'MARK SET LINE'
'REPLACE STRING="<" BY="</" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'UP'
'PING SLOT 9'
'PONG SLOT 0'
'MARK SET LINE'
'PONG SLOT 9'
'MARK SET LINE'
'REPLACE STRING="'stylepre'list:<FIX>" BY="'stylepre'list_fix:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'REPLACE STRING="<FIX>" BY="'stylepre'list_fix:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'REPLACE STRING="'stylepre'list:<G>" BY="'stylepre'list_big:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'REPLACE STRING="<G>" BY="'stylepre'list_big:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'REPLACE STRING="</G>" BY="'stylepre'list:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'REPLACE STRING="</FIX>" BY="'stylepre'list:" WILD=FALSE BLOCK QUIET CONFIRM=FALSE'
'DOWN'
'DOWN'
'FIRST'
'QUERY LINE VAR BISWO'
'CR'
'GOTO EOL'
'DEL'
'DEL'
'QUERY CODE'
if ~(RESULT=60 | RESULT=64) then do
'RIGHT'
'TEXT T="'style'"'
end
else 'DELETE LEFT'
'PONG SLOT 0'
'FIRST'
'MARK HIDE'
'MARK SET COLUMN'
'GOTO EOL'
'MARK SET COLUMN'
'CLIP COPY UNIT 112'
leer=1
leer2=0
'QUERY TAB VAR TABULATOR'
'QUERY LINE'
do while RESULT<BISWO
'DOWN'
'GOTO INDENT'
'QUERY ANYCHAR VAR VARX'
if ((VARX="TRUE") & (leer=1)) then do
'QUERY COLUMN'
if RESULT<=TABULATOR then do
'DELETE LEFT'
'TAB SOLID=TRUE REGULAR'
'FIND STRING=" " NEXT WILD=FALSE QUIET'
'CR'
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
BISWO=BISWO+1
'GOTO INDENT'
'DELETE LEFT'
'TAB SOLID=TRUE REGULAR'
leer=0
end
else do
'DELETE LEFT'
'TAB SOLID=TRUE REGULAR'
'TEXT T="<\#8226>"'
'CR'
BISWO=BISWO+1
leer=0
end
end
else if VARX="FALSE" then do
if leer2=0 then leer=1
end
else if leer2=0 then 'DELETE LEFT'
if VARX="TRUE" then do
'GOTO EOL'
'GOTO STEP -3'
'EXTRACT LEFT="<" RIGHT=">"'
if RESULT="LB" then do
'GOTO INDENT'
if leer2=0 then do
'REPLACE STRING="<LB>" BY="'stylepre'list_par:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
end
else do
'REPLACE STRING="<LB>" BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
end
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'CR'
'DOWN'
'GOTO INDENT'
'DELETE LEFT'
'TAB SOLID=TRUE REGULAR'
'TAB SOLID=TRUE REGULAR'
'GOTO EOL'
'GOTO STEP -3'
'EXTRACT LEFT="<" RIGHT=">"'
if RESULT="LB" then do
leer2=1
'UP'
end
else do
leer2=0
'GOTO EOL'
'CLIP PASTE UNIT 112'
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
end
end
end
'QUERY LINE'
end
end
else found=1
end
'GOTO BYTE=1'
'REPLACE STRING="<HEAD>" BY="@Phead:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'FIRST'
'DOWN'
'QUERY CODE VAR VARX'
'QUERY LINE VAR VARY'
'QUERY ANYCHAR'
do while (((VARX=64)|(RESULT="FALSE"))&(VARY<7))
'DOWN'
'QUERY CODE VAR VARX'
'QUERY LINE VAR VARY'
'QUERY ANYCHAR'
end
'QUERY CODE'
do while RESULT=33
'GOTO STEP=16'
'QUERY CODE'
do while RESULT=60
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'RIGHT'
'QUERY CODE'
end
'QUERY CODE'
end
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'MARK HIDE'
'MARK SET COLUMN'
'CLIP CUT UNIT 113'
n=writeln(script,"'DRAWTEXTOBJ 'BBOX.left' 'BBOX.top")
n=writeln(script,"'SELECTTEXT AT 'BBOX.left' 'BBOX.top")
n=writeln(script,"'SETPARAGRAPHSTYLE first'")
n=writeln(script,"'INSERTTEXT FILE CLIPS:113 FILTER IFFFTXT'")
n=writeln(script,"'SETTEXTWRAP SHAPE WRAPAROUND'")
'FIRST'
'TEXT T="'stylepre'noindent:"'
'QUERY CODE'
do while RESULT=33
'GOTO STEP=16'
'QUERY CODE'
do while RESULT=60
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'RIGHT'
'QUERY CODE'
end
'QUERY CODE'
end
'TEXT T="'style'"'
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="<T>" BY="'stylepre'top:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'SMARTCR'
'SMARTCR'
'GOTO INDENT'
'TEXT T="'stylepre'noindent:"'
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'QUERY CODE'
if ~(RESULT=60 | RESULT=64) then do
'RIGHT'
'TEXT T="'style'"'
end
else 'DELETE LEFT'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="<ST>" BY="'stylepre'subtop:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'SMARTCR'
'SMARTCR'
'GOTO INDENT'
'TEXT T="'stylepre'noindent:"'
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'QUERY CODE'
if ~(RESULT=60 | RESULT=64) then do
'RIGHT'
'TEXT T="'style'"'
end
else 'DELETE LEFT'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="<M>" BY="'stylepre'mark:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'SMARTCR'
'SMARTCR'
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'GOTO INDENT'
'TEXT T="'stylepre'noindent:"'
'QUERY CODE'
if ~(RESULT=60 | RESULT=64) then do
'RIGHT'
'TEXT T="'style'"'
end
else 'DELETE LEFT'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'FIND STRING="<E>" WILD=FALSE NEXT QUIET'
if RC=0 then do
huch=huch+RANDOM(0,5)
if huch>5 then huch=0
'DEL'
'DEL'
'DEL'
ostr=""
select
when huch=0 then estr="<B>"
when huch=1 then estr="<I>"
when huch=2 then estr="<S>"
when huch=3 then do
estr="@Csuper:"
ostr="@Cplain:"
end
when huch=4 then do
estr="@Csub:"
ostr="@Cplain:"
end
when huch=5 then do
estr="<G>"
ostr="</G>"
end
end
if ostr="" then ostr=estr
'TEXT T="'estr'"'
'FIND STRING="</E>" WILD=FALSE NEXT QUIET'
if RC=0 then do
'DEL'
'DEL'
'DEL'
'DEL'
'TEXT T="'ostr'"'
end
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="<TAB>" BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'CR'
'DELETE LEFT'
'TAB SOLID=TRUE REGULAR'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="</LISTEND></FIX>" BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY ANYCHAR'
if RESULT="FALSE" then 'DELETE LINE'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="</LISTEND></G>" BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY ANYCHAR'
if RESULT="FALSE" then 'DELETE LINE'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="</LISTEND>" BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY ANYCHAR'
if RESULT="FALSE" then 'DELETE LINE'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE BY="'stylepre'noindent:" STRING="<NOI>" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY CODE VAR VARX'
if VARX=60 then do
do while VARX=60
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'RIGHT'
'QUERY CODE VAR VARX'
end
end
else 'RIGHT'
'TEXT T="'style'"'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE BY="'stylepre'noindent:<I>" STRING="'stylepre'noindent:!'style'!!xxxDangerI!!!" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'RIGHT'
'TEXT T="'style'"'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE BY="'stylepre'noindent:<B>" STRING="'stylepre'noindent:!'style'!!xxxDangerB!!!" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'RIGHT'
'TEXT T="'style'"'
end
else found=1
end
'GOTO BYTE=1'
found=0
do while found=0
'REPLACE STRING="<PIC " BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'MARK HIDE'
'MARK SET COLUMN'
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'DEL'
'MARK SET COLUMN'
'SAVE BLOCK NAME="t:te_temp"'
'DELETE BLOCK'
'QUERY ANYCHAR'
if RESULT="FALSE" then 'DELETE LINE'
'UP'
call open(file,"t:te_temp","R")
picname=readln(file)
call close(file)
picname="'PLACEGRAPHIC FILE "||picname||" FILTER GIF STATUS'"
n=writeln(script,picname)
n=writeln(script,"'SETTEXTWRAP SHAPE STANDOFF 0.2cm 0.2cm WRAPAROUND'")
n=writeln(script,"'EDITPICTURE EXTERNAL'")
end
else found=1
end
found=0
'GOTO BYTE=1'
do while found=0
'REPLACE STRING="<NAME " BY="'stylepre'name:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'GOTO EOL'
'FIND STRING=">" PREV WILD=FALSE QUIET'
'DEL'
end
else found=1
end
found=0
'GOTO BYTE=1'
do while found=0
'REPLACE STRING="<G>" BY="'stylepre'big:" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'QUERY CODE'
do while RESULT=64
counter=1
'MARK HIDE'
'MARK SET COLUMN'
'RIGHT'
'QUERY CODE'
if RESULT=80 then do
'FIND STRING=":" NEXT WILD=FALSE QUIET'
'RIGHT'
'QUERY CODE'
end
end
if counter=1 then do
'MARK SET COLUMN'
'DELETE BLOCK'
end
end
else found=1
end
'REPLACE STRING="·" BY="<\#8226>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE BY="<I>" STRING="!!!xxxDangerI!!!" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE BY="<B>" STRING="!!!xxxDangerB!!!" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="</B>" BY="<B>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="</I>" BY="<I>" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<G>" BY="'stylepre'big:" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="</G>" BY="'style'" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="<FIX>" BY="'stylepre'fix:" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'REPLACE STRING="</FIX>" BY="'style'" WILD=FALSE ALL QUIET CONFIRM=FALSE'
'GOTO BYTE=1'
'REPLACE STRING="<XTRA " BY="" WILD=FALSE NEXT QUIET CONFIRM=FALSE'
if RC=0 then do
'MARK HIDE'
'MARK SET COLUMN'
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'DEL'
'MARK SET COLUMN'
'CLIP CUT UNIT 114'
n=writeln(script,"'GETDIMENSIONS VARX'")
n=writeln(script,"VARX=VARX.height-0.677")
n=writeln(script,"'DRAWTEXTOBJ 'BBOX.left' 'VARX")
n=writeln(script,"'SELECTTEXT AT 'BBOX.left' 'VARX")
n=writeln(script,"'SETPARAGRAPHSTYLE xtra'")
n=writeln(script,"'INSERTTEXT FILE CLIPS:114 FILTER IFFFTXT'")
'UP'
'QUERY ANYCHAR'
if RESULT="TRUE" then 'DOWN'
'DOWN'
'QUERY ANYCHAR'
do while RESULT="FALSE"
'DELETE LINE'
'QUERY ANYCHAR'
end
end
X=0
N="FALSE"
'GOTO LINE=2 COLUMN=1'
'QUERY CODE VAR VARX'
'QUERY ANYCHAR VAR N'
do while (((VARX=64)|(N="FALSE"))&(X<7))
'DOWN'
'QUERY LINE VAR X'
'QUERY CODE VAR VARX'
y=N
'QUERY ANYCHAR VAR N'
if y=N then X=7
end
'QUERY CODE'
if ((X<7)&(~(RESULT=64))) then do
'TEXT T="'stylepre'noindent:"'
'QUERY CODE'
if RESULT=60 then do
'FIND STRING=">" NEXT WILD=FALSE QUIET'
'RIGHT'
end
'QUERY CODE'
if ~(RESULT=64) then 'TEXT T="'style'"'
end
'GOTO BYTE=1'
found=0
do while found=0
'FIND STRING="<\c>" WILD=FALSE NEXT QUIET'
if RC=0 then do
'GOTO STEP 4'
'QUERY COLUMN VAR VARX'
'GOTO EOL'
'QUERY COLUMN'
do while RESULT=VARX
'DEL'
'GOTO EOL'
'QUERY COLUMN'
end
end
else found=1
end
/* end */
n=writeln(script,"'SELECTTEXT BACKMOST AT 'BBOX.left' 'BBOX.top")
n=writeln(script,"'TEXTCURSOR BOA'")
n=writeln(script,"'INSERTTEXT CONVERTQUOTE FALSE CONVERTDASH FALSE LINEHASLF TRUE AMIGA TEXTCODE PageStream FILE T:te.out FILTER Ascii STATUS'")
n=close(script)
address command 'run >nil: rx t:typeset.script'
exit 0
syntax:
say "Sorry, error line" SIGL ":" errortext(RC) ":-("
exit 20